﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

// SDD# - Software Defined Devices in C# for Linux and Windows
// Interface for loadable Apps
// (c) 2014-2015 Chris Burri. MIT License applies. 
// See http://niston.wordpress.com


namespace sdd.apps
{
    public interface IApplication
    {
        string Name { get; }
        Director Director { set; get; }
        subsystems.ui.MenuItem AppMenu { get; }
        subsystems.ui.screens.ScrMenu ScreenAppMenu { get; }
        subsystems.ui.IScreen ScreenMain { get; }
        void Initialize();
        void Terminate();
        void Activate();
        void Deactivate();
    }
}
